In computing environments, data storage and retrieval take many forms and utilize varied methods. Utility, space-efficiency, and speed are common goals for those creating and using data structures. Data storage can involve vast computer warehouses storing large volumes of varied information, banks storing account information, or business databases collecting information related to operating their business. While these types of systems are common, there are many situations that require quick responses to specific questions using a small amount of storage resources.